Спринт 2/18 → Тема 3/6: Настройка окружения: Python, IDE, venv → Урок 3/6
Командная строка: практика
В прошлом уроке через командную строку вы узнали, в какой директории находитесь и что в ней содержится, осмотрелись вокруг. Пора научиться ходить по директориям, создавать новые папки и файлы, а также редактировать файлы прямо из командной строки.
Навигация
В процессе экспериментов в командной строке вы могли покинуть домашнюю директорию пользователя. Чтобы вернуться в неё, вы можете закрыть терминал и открыть его снова — так вы снова окажетесь в директории текущего пользователя, либо можно поступить иначе.
Из любой директории можно вернуться в директорию текущего пользователя выполнив команду:
BASH
Теперь вы снова в домашнем каталоге. Отсюда и начнём путешествовать по файловой системе.
Для перемещения из одной папки в другую используется команда
cd (от англ. change directory — «сменить каталог»). Синтаксис у команды такой: cd имя_папки. А вот пример её использования:BASH
Если в названии папки есть пробелы, используйте кавычки:
BASH
Чтобы перейти в директорию уровнем выше — поставьте после
cd пробел и две точки:BASH
Новые папки и файлы
Походили и хватит. Теперь вашей задачей будет через командную строку создать на своём компьютере директорию для учебных проектов, она будет называться Dev.
Если у вас Windows, разместите директорию Dev в корне диска D, если его нет, то выбирайте диск C.
BASH
Если у вас Linux или macOS, разместите папку Dev в директории текущего пользователя.
Перейдите через терминал в нужную директорию. Далее введите команду
mkdir (от англ. make directory — «создать директорию»), передайте ей имя новой папки и нажмите Enter:BASH
Директория для учебных проектов создана. Далее перейдите в директорию Dev, создайте в ней дочернюю директорию first_project и перейдите в неё. Для этого выполните по очереди команды:
BASH
Теперь создайте в директории first_project два файла: practicum.py и example.txt. Чтобы это сделать, введите в терминал команду
touch (англ. «коснуться») и передайте ей имена файлов с расширением:BASH
Редактирование файлов через терминал
Вы создали два файла:
- example.txt — обычный текстовый файл;
- practicum.py — файл, в котором будем писать код на языке Python.
Сейчас вашей задачей будет написать свой первый код на Python не в тренажёре, а в специально предназначенном для этого файле.
Вообще писать код можно где угодно, даже в текстовом редакторе. Но, например, при работе на сервере у вас не будет программ с графическим интерфейсом. И тогда нужен инструмент, который будет запускаться из терминала и работать в текстовом режиме, например, встроенный текстовый редактор Nano.
Откройте файл practicum.py через Nano. Для этого введите в терминал команду:
BASH
Перед вами должно открыться окно редактора Nano:
Для работы в этом редакторе вам не понадобится мышка. Работа с файлами возможна только при помощи клавиатуры. Внизу окна указаны горячие клавиши, которые можно использовать при работе с Nano. Символ
^ означает нажатие кнопки Ctrl.Напишите свою первую программу не в тренажёре. Пусть она выводит приветствие Практикуму:
Сохраните программу и закройте редактор.Программа есть, теперь можно её запустить. В тренажёре вы запускали программы мышкой — выбирали нужный элемент в интерфейсе и кликали на него. В терминале всё работает иначе. Вам нужно через интерпретатор Python вызвать программу по имени: сказать терминалу «Запусти интерпретатор Python, и пусть он выполнит инструкции из файла practicum.py». Для этого используйте команду:
BASH
Привет, Практикум! Привет, мир! Привет, первая программа на Python, написанная в Nano 🙂
Удаление папок и файлов
Чтобы что-то удалить, нужно это что-то сначала создать. У вас уже есть папка first_project, но она вам пригодится в следующих уроках, поэтому удалять её не будем. Через терминал перейдите в директорию Dev и создайте две новые папки: second_project и third_project.
Директорию second_project/ оставьте пустой, а в директории third_project/ создайте два файла: bolek.txt и lelek.txt.
Всё готово для того, чтобы тренироваться удалять созданное. Из директории third_project удалите файл bolek.txt. Для этого передайте команде
rm (от англ. remove — «удалить») имя файла:BASH
Теперь перейдите в директорию Dev и удалите из неё пустую директорию second_project. В этом вам поможет команда
rmdir (от англ. remove directory — «удалить директорию»):BASH
Теперь этой же командой попробуйте удалить директорию third_project.
Если в директории, которую вы пытаетесь стереть, есть какие-то файлы, то командная строка не удалит её и выведет сообщение, что директория не пуста:
Это защита от случайного удаления нужных файлов. Если директорию всё-таки нужно удалить вместе со всем её содержимым, можно использовать команду
rm с ключом -r:BASH
Ключ
-r (от англ. recursive — «рекурсивный») отвечает за рекурсивное удаление файлов и директорий. То есть команда удаления будет последовательно применяться к каждому из элементов, находящихся внутри указанной директории пока наконец не сотрёт их все. После чего удалит и опустевшую к тому моменту директорию. Например, когда вы вызываете команду rm с ключом r для директории third_project, то сначала удаляются все хранящиеся в ней файлы, а именно lelek.txt, а после — и сама директория third_project.❗ Будьте аккуратны, удаление файлов и папок командами
rm и rmdir необратимо — они идут мимо корзины и исчезают навсегда.Соотнесите команды с действиями, которые они выполняют.
Создаёт новую директорию.
mkdir
mkdir — от англ. make directory, «создать директорию»
Удаляет директорию или файл.
rm
rm — от англ. remove, «удалить»
Выводит имя текущей директории.
pwd
pwd — от англ. print working directory, «покажи рабочую директорию»
Создаёт новый файл.
touch
touch — от англ. touch, «коснуться»
Переходит в указанную директорию.
cd
cd — от англ. change directory, «сменить директорию»
Удаляет директорию.
rmdir
rmdir — от англ. remove directory, «удалить директорию»
Выводит содержимое текущей директории.
ls
ls — от англ. list directory contents, «вывести список содержимого директории»
Лайфхаки
Все имена файлов и папок не упомнить. Но Bash умеет подсказывать адреса директорий, вложенных в папку, в которой вы находитесь. Достаточно ввести несколько начальных букв из названия нужной папки и нажать клавишу Tab.
Пример:
BASH
В каталоге может быть несколько файлов или папок, название которых начинается одинаково. Например: diploma_ver_1, diploma_ver_2 и diploma_ver_may_be_final.
Если в такой ситуации набрать
diploma и дважды нажать Tab, в терминале появится список файлов и директорий, имена которых начинаются с diploma:BASH
Чтобы терминал понял, какое имя вам нужно, — напишите достаточное количество символов:
BASH
Также Bash хранит историю команд. Если вы будете нажимать клавишу «Вверх» ↑, то в строке начнут появляться команды, выполненные ранее. Этим механизмом удобно пользоваться, например, когда нужно повторить какую-то команду.
Основы техники тайного искусства управления компьютером без иконок и мышки изложены. Отсутствие графического интерфейса теперь не помеха, всё как в матрице — смотришь на буквы и видишь женщину в красном директории и файлы.
💡 А чтобы базовые команды для работы в терминале всегда были под рукой — скачивайте шпаргалку.